Certain machine/computer-executable applications are capable of being executed in parallel by different processing resources. For example, a first portion of an application may execute on a first processing resource at least partially concurrently with execution of a second portion of the application on a second processing resource. A resource manager may be configured to allocate a set of processing resources to collectively execute an application. Conventional resource managers suffer from a number of drawbacks. Technical solutions that address at least some of the drawbacks associated with conventional resource managers are described herein.